package com.qf.service;

import com.github.pagehelper.PageInfo;
import com.qf.pojo.Usercollection;
import com.qf.utils.vo.PersonnelDataVO;

import java.util.Map;

public interface UsercollectionService {
    //新增人事档案
    int insert(Usercollection record);

    //人事档案管理模块查询人事档案
    PageInfo<PersonnelDataVO> findPersonnelInfoByLimit(Map map);

    //人事审核模块查询人事档案
    PageInfo<PersonnelDataVO> findPersonnelInfoByLimitForCheck(Map map);

    //根据档案id查询档案信息
    Usercollection selectByPrimaryKey(Integer id);

    //修改档案信息
    int updateByPrimaryKeySelective(Usercollection record);

    //审核档案通过
    int updateCheckStateToPass(Integer id);

    //审核档案驳回
    int updateCheckStateToBack(Integer id);

    //添加并将审核状态设置为审核中
    int insertAndSetCheckState(Usercollection usercollection);

    //将审核状态设置为审核中
    int setCheckState(Usercollection usercollection);

    //将档案状态设置为已删除
    int updateCheckStateToDelete(Integer id);

    //删除恢复:根据id修改档案状态为试用期;
    int recoverDeleteState(Integer id);

    //逻辑删除的档案进行永久删除
    int foreverDelete(Integer id);

    //档案变更(修改信息并将审核状态设置为变更)
    int modify(Usercollection usercollection);

    //进行变更并提交申请(修改信息+修改审核状态为变更审核中)
    int modifyAndChecking(Usercollection usercollection);


//    int deleteByPrimaryKey(Integer id);
//
//    int insertSelective(Usercollection record);

//
//    int updateByPrimaryKeySelective(Usercollection record);
//
//    int updateByPrimaryKey(Usercollection record);
}